//package springboot.file.demo.easyexcel.controller;
//
//import com.alibaba.excel.EasyExcel;
//import com.alibaba.excel.write.builder.ExcelWriterBuilder;
//import com.alibaba.excel.write.builder.ExcelWriterSheetBuilder;
//import io.swagger.annotations.ApiOperation;
//import org.springframework.web.bind.annotation.*;
//import springboot.file.demo.data.MemberData;
//import springboot.file.demo.pojo.Member;
//
//import javax.servlet.http.HttpServletResponse;
//import java.io.InputStream;
//import java.net.URLEncoder;
//import java.util.ArrayList;
//import java.util.List;
//import java.util.Map;
//
///**
// * @Author: jxm
// * @Description:
// * @Date: 2022/10/27 10:59
// * @Version: 1.0
// */
//@RestController
//public class TestController01 {
//
//    /**
//     * 导出Excel模板
//     *
//     * @param response response
//     * @throws Exception Exception
//     */
//    @ApiOperation(value = "用户Excel模板导出", notes = "用户Excel模板导出")
//    @RequestMapping(value = "/export", method = RequestMethod.POST)
//    public void export(HttpServletResponse response) throws Exception {
//        List<Member> list = MemberData.getList();
//        // 注意Map的key必须和模板保持一致,举例是name 和code  excelList查询要填充的列表
//        List<Map<String, String>> excelList = new ArrayList<>();
//        // 设置响应类型
//        response.setContentType("application/vnd.openxmlformats-officedocument.spreadsheetml.sheet");
//        // 设置编码格式
//        response.setCharacterEncoding("utf-8");
//
//        long currentTime=System.currentTimeMillis();
//        // 设置URLEncoder.encode 防止中文乱码
//        String fileName = URLEncoder.encode("人员组织架构模板-" + currentTime, "UTF-8").replaceAll("\\+", "%20");
//        // 设置响应头
//        response.setHeader("Content-disposition", "attachment;filename*=utf-8''" + fileName + ".xlsx");
//
//        // 使用模板填充表格，这里将表格预制到代码resources下面了，可以根据需求预制到其他地方，绝对路径和相对路径都可。
////        Resource resource = new ClassPathResource("templates/templateTest.xlsx");
////        String templateFileName = resource.getFile().getPath();
//        // 文件模板
//        InputStream inputStream = this.getClass().getClassLoader().getResourceAsStream("templateTest.xlsx");
//        // 生成工作簿对象
//        ExcelWriterBuilder workBookWriter = EasyExcel.write(response.getOutputStream())
//                .withTemplate(inputStream);
//        // 创建工作表对象
//        ExcelWriterSheetBuilder sheet = workBookWriter.sheet(0);
//        sheet.doFill(list);
//    }
//
//}
